home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 July: Mac OS SDK / Dev.CD Jul 99 SDK1.toast / Development Kits / Mac OS / QuickDraw3D 1.6 SDK / Mac Interfaces / AIncludes / QD3DViewer.a < prev    next >
Encoding:
Text File  |  1999-05-18  |  18.6 KB  |  651 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        QD3DViewer.a
  3. ;
  4. ;    Contains:    MacOS Viewer Controller Interface File.                                
  5. ;
  6. ;    Version:    Technology:    Quickdraw 3D 1.6
  7. ;                Release:    QuickTime 4.0
  8. ;
  9. ;    Copyright:    © 1995-1999 by Apple Computer, Inc., all rights reserved.
  10. ;
  11. ;    Bugs?:        For bug reports, consult the following page on
  12. ;                the World Wide Web:
  13. ;
  14. ;                    http://developer.apple.com/bugreporter/
  15. ;
  16. ;
  17.     IF &TYPE('__QD3DVIEWER__') = 'UNDEFINED' THEN
  18. __QD3DVIEWER__ SET 1
  19.  
  20.     IF &TYPE('__QD3D__') = 'UNDEFINED' THEN
  21.     include 'QD3D.a'
  22.     ENDIF
  23.     IF &TYPE('__QD3DGROUP__') = 'UNDEFINED' THEN
  24.     include 'QD3DGroup.a'
  25.     ENDIF
  26.  
  27.     IF TARGET_OS_MAC THEN
  28.     IF &TYPE('__EVENTS__') = 'UNDEFINED' THEN
  29.     include 'Events.a'
  30.     ENDIF
  31.     IF &TYPE('__MACTYPES__') = 'UNDEFINED' THEN
  32.     include 'MacTypes.a'
  33.     ENDIF
  34.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  35.     include 'Quickdraw.a'
  36.     ENDIF
  37.     ENDIF    ; TARGET_OS_MAC
  38. ; typedef void *                        TQ3ViewerObject
  39.  
  40.     IF TARGET_OS_MAC THEN
  41.  
  42. kQ3ViewerShowBadge                EQU        $01
  43. kQ3ViewerActive                    EQU        $02
  44. kQ3ViewerControllerVisible        EQU        $04
  45. kQ3ViewerDrawFrame                EQU        $08
  46. kQ3ViewerDraggingOff            EQU        $10
  47. kQ3ViewerButtonCamera            EQU        $20
  48. kQ3ViewerButtonTruck            EQU        $40
  49. kQ3ViewerButtonOrbit            EQU        $80
  50. kQ3ViewerButtonZoom                EQU        $0100
  51. kQ3ViewerButtonDolly            EQU        $0200
  52. kQ3ViewerButtonReset            EQU        $0400
  53. kQ3ViewerOutputTextMode            EQU        $0800
  54. kQ3ViewerDragMode                EQU        $1000
  55. kQ3ViewerDrawGrowBox            EQU        $2000
  56. kQ3ViewerDrawDragBorder            EQU        $4000
  57. kQ3ViewerDraggingInOff            EQU        $8000
  58. kQ3ViewerDraggingOutOff            EQU        $00010000
  59. kQ3ViewerButtonOptions            EQU        $00020000
  60. kQ3ViewerPaneGrowBox            EQU        $00040000
  61. kQ3ViewerDefault                EQU        $80000000
  62.  
  63. kQ3ViewerEmpty                    EQU        0
  64. kQ3ViewerHasModel                EQU        $01
  65. kQ3ViewerHasUndo                EQU        $02
  66.  
  67. ; typedef long                            TQ3ViewerCameraView
  68. kQ3ViewerCameraRestore            EQU        0
  69. kQ3ViewerCameraFit                EQU        1
  70. kQ3ViewerCameraFront            EQU        2
  71. kQ3ViewerCameraBack                EQU        3
  72. kQ3ViewerCameraLeft                EQU        4
  73. kQ3ViewerCameraRight            EQU        5
  74. kQ3ViewerCameraTop                EQU        6
  75. kQ3ViewerCameraBottom            EQU        7
  76.  
  77. ; ******************************************************************************
  78. ; **                                                                             **
  79. ; **        Return viewer version number                                         **
  80. ; **                                                                             **
  81. ; ****************************************************************************
  82.  
  83. ;
  84. ; extern OSErr Q3ViewerGetVersion(unsigned long *majorRevision, unsigned long *minorRevision)
  85. ;
  86.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  87.         IMPORT_CFM_FUNCTION Q3ViewerGetVersion
  88.     ENDIF
  89.  
  90.  
  91. ; ******************************************************************************
  92. ; **                                                                             **
  93. ; **        Return viewer release version number                                 **
  94. ; **        (in 'vers' format - e.g. 0x01518000 ==> 1.5.1 release)                 **
  95. ; **                                                                             **
  96. ; ****************************************************************************
  97.  
  98. ;
  99. ; extern OSErr Q3ViewerGetReleaseVersion(unsigned long *releaseRevision)
  100. ;
  101.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  102.         IMPORT_CFM_FUNCTION Q3ViewerGetReleaseVersion
  103.     ENDIF
  104.  
  105.  
  106. ; ******************************************************************************
  107. ; **                                                                             **
  108. ; **                        Creation and destruction                             **
  109. ; **                Note that this is not a QuickDraw 3D object                     **
  110. ; **                                                                             **
  111. ; ****************************************************************************
  112.  
  113. ;
  114. ; extern TQ3ViewerObject Q3ViewerNew(CGrafPtr port, Rect *rect, unsigned long flags)
  115. ;
  116.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  117.         IMPORT_CFM_FUNCTION Q3ViewerNew
  118.     ENDIF
  119.  
  120. ;
  121. ; extern OSErr Q3ViewerDispose(TQ3ViewerObject theViewer)
  122. ;
  123.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  124.         IMPORT_CFM_FUNCTION Q3ViewerDispose
  125.     ENDIF
  126.  
  127.  
  128. ; ******************************************************************************
  129. ; **                                                                             **
  130. ; **                    Functions to attach data to a viewer                     **
  131. ; **                                                                             **
  132. ; ****************************************************************************
  133.  
  134. ;
  135. ; extern OSErr Q3ViewerUseFile(TQ3ViewerObject theViewer, long refNum)
  136. ;
  137.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  138.         IMPORT_CFM_FUNCTION Q3ViewerUseFile
  139.     ENDIF
  140.  
  141. ;
  142. ; extern OSErr Q3ViewerUseData(TQ3ViewerObject theViewer, void *data, long size)
  143. ;
  144.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  145.         IMPORT_CFM_FUNCTION Q3ViewerUseData
  146.     ENDIF
  147.  
  148.  
  149. ; ******************************************************************************
  150. ; **                                                                             **
  151. ; **        Functions to write data out from the Viewer                             **
  152. ; **                                                                             **
  153. ; ****************************************************************************
  154.  
  155. ;
  156. ; extern OSErr Q3ViewerWriteFile(TQ3ViewerObject theViewer, long refNum)
  157. ;
  158.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  159.         IMPORT_CFM_FUNCTION Q3ViewerWriteFile
  160.     ENDIF
  161.  
  162. ;
  163. ; extern unsigned long Q3ViewerWriteData(TQ3ViewerObject theViewer, Handle data)
  164. ;
  165.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  166.         IMPORT_CFM_FUNCTION Q3ViewerWriteData
  167.     ENDIF
  168.  
  169.  
  170. ; ******************************************************************************
  171. ; **                                                                             **
  172. ; **        Use this function to force the Viewer to re-draw                     **
  173. ; **                                                                             **
  174. ; ****************************************************************************
  175.  
  176. ;
  177. ; extern OSErr Q3ViewerDraw(TQ3ViewerObject theViewer)
  178. ;
  179.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  180.         IMPORT_CFM_FUNCTION Q3ViewerDraw
  181.     ENDIF
  182.  
  183. ;
  184. ; extern OSErr Q3ViewerDrawContent(TQ3ViewerObject theViewer)
  185. ;
  186.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  187.         IMPORT_CFM_FUNCTION Q3ViewerDrawContent
  188.     ENDIF
  189.  
  190. ;
  191. ; extern OSErr Q3ViewerDrawControlStrip(TQ3ViewerObject theViewer)
  192. ;
  193.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  194.         IMPORT_CFM_FUNCTION Q3ViewerDrawControlStrip
  195.     ENDIF
  196.  
  197.  
  198. ; ******************************************************************************
  199. ; **                                                                             **
  200. ; **        Function used by the Viewer to filter and handle events                 **
  201. ; **                                                                             **
  202. ; ****************************************************************************
  203.  
  204. ;
  205. ; extern Boolean Q3ViewerEvent(TQ3ViewerObject theViewer, EventRecord *evt)
  206. ;
  207.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  208.         IMPORT_CFM_FUNCTION Q3ViewerEvent
  209.     ENDIF
  210.  
  211.  
  212. ; ******************************************************************************
  213. ; **                                                                             **
  214. ; **        This function returns a PICT of the contents of the                  **
  215. ; **        Viewer's window.  The application should dispose the PICT.             **
  216. ; **                                                                             **
  217. ; ****************************************************************************
  218.  
  219. ;
  220. ; extern PicHandle Q3ViewerGetPict(TQ3ViewerObject theViewer)
  221. ;
  222.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  223.         IMPORT_CFM_FUNCTION Q3ViewerGetPict
  224.     ENDIF
  225.  
  226.  
  227. ; ******************************************************************************
  228. ; **                                                                             **
  229. ; **                        Calls for dealing with Buttons                         **
  230. ; **                                                                             **
  231. ; ****************************************************************************
  232.  
  233. ;
  234. ; extern OSErr Q3ViewerGetButtonRect(TQ3ViewerObject theViewer, unsigned long button, Rect *rect)
  235. ;
  236.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  237.         IMPORT_CFM_FUNCTION Q3ViewerGetButtonRect
  238.     ENDIF
  239.  
  240. ;
  241. ; extern unsigned long Q3ViewerGetCurrentButton(TQ3ViewerObject theViewer)
  242. ;
  243.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  244.         IMPORT_CFM_FUNCTION Q3ViewerGetCurrentButton
  245.     ENDIF
  246.  
  247. ;
  248. ; extern OSErr Q3ViewerSetCurrentButton(TQ3ViewerObject theViewer, unsigned long button)
  249. ;
  250.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  251.         IMPORT_CFM_FUNCTION Q3ViewerSetCurrentButton
  252.     ENDIF
  253.  
  254.  
  255. ; ******************************************************************************
  256. ; **                                                                             **
  257. ; **        Functions to set/get the group to be displayed by the Viewer.         **
  258. ; **                                                                             **
  259. ; ****************************************************************************
  260.  
  261. ;
  262. ; extern OSErr Q3ViewerUseGroup(TQ3ViewerObject theViewer, TQ3GroupObject group)
  263. ;
  264.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  265.         IMPORT_CFM_FUNCTION Q3ViewerUseGroup
  266.     ENDIF
  267.  
  268. ;
  269. ; extern TQ3GroupObject Q3ViewerGetGroup(TQ3ViewerObject theViewer)
  270. ;
  271.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  272.         IMPORT_CFM_FUNCTION Q3ViewerGetGroup
  273.     ENDIF
  274.  
  275.  
  276. ; ******************************************************************************
  277. ; **                                                                             **
  278. ; **        Functions to set/get the color used to clear the window                 **
  279. ; **                                                                             **
  280. ; ****************************************************************************
  281.  
  282. ;
  283. ; extern OSErr Q3ViewerSetBackgroundColor(TQ3ViewerObject theViewer, TQ3ColorARGB *color)
  284. ;
  285.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  286.         IMPORT_CFM_FUNCTION Q3ViewerSetBackgroundColor
  287.     ENDIF
  288.  
  289. ;
  290. ; extern OSErr Q3ViewerGetBackgroundColor(TQ3ViewerObject theViewer, TQ3ColorARGB *color)
  291. ;
  292.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  293.         IMPORT_CFM_FUNCTION Q3ViewerGetBackgroundColor
  294.     ENDIF
  295.  
  296.  
  297. ; ******************************************************************************
  298. ; **                                                                             **
  299. ; **        Getting/Setting a Viewer's View object.                                 **
  300. ; **                                                                             **
  301. ; ****************************************************************************
  302.  
  303. ;
  304. ; extern TQ3ViewObject Q3ViewerGetView(TQ3ViewerObject theViewer)
  305. ;
  306.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  307.         IMPORT_CFM_FUNCTION Q3ViewerGetView
  308.     ENDIF
  309.  
  310. ;
  311. ; extern OSErr Q3ViewerRestoreView(TQ3ViewerObject theViewer)
  312. ;
  313.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  314.         IMPORT_CFM_FUNCTION Q3ViewerRestoreView
  315.     ENDIF
  316.  
  317.  
  318. ; ******************************************************************************
  319. ; **                                                                             **
  320. ; **        Calls for setting/getting viewer flags                                 **
  321. ; **                                                                             **
  322. ; ****************************************************************************
  323.  
  324. ;
  325. ; extern OSErr Q3ViewerSetFlags(TQ3ViewerObject theViewer, unsigned long flags)
  326. ;
  327.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  328.         IMPORT_CFM_FUNCTION Q3ViewerSetFlags
  329.     ENDIF
  330.  
  331. ;
  332. ; extern unsigned long Q3ViewerGetFlags(TQ3ViewerObject theViewer)
  333. ;
  334.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  335.         IMPORT_CFM_FUNCTION Q3ViewerGetFlags
  336.     ENDIF
  337.  
  338.  
  339. ; ******************************************************************************
  340. ; **                                                                             **
  341. ; **        Calls related to bounds/dimensions.  Bounds is the size of              **
  342. ; **        the window.  Dimensions can either be the Rect from the ViewHints     **
  343. ; **        or the current dimensions of the window (if you do a Set).             **
  344. ; **                                                                             **
  345. ; ****************************************************************************
  346.  
  347. ;
  348. ; extern OSErr Q3ViewerSetBounds(TQ3ViewerObject theViewer, Rect *bounds)
  349. ;
  350.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  351.         IMPORT_CFM_FUNCTION Q3ViewerSetBounds
  352.     ENDIF
  353.  
  354. ;
  355. ; extern OSErr Q3ViewerGetBounds(TQ3ViewerObject theViewer, Rect *bounds)
  356. ;
  357.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  358.         IMPORT_CFM_FUNCTION Q3ViewerGetBounds
  359.     ENDIF
  360.  
  361. ;
  362. ; extern OSErr Q3ViewerSetDimension(TQ3ViewerObject theViewer, unsigned long width, unsigned long height)
  363. ;
  364.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  365.         IMPORT_CFM_FUNCTION Q3ViewerSetDimension
  366.     ENDIF
  367.  
  368. ;
  369. ; extern OSErr Q3ViewerGetDimension(TQ3ViewerObject theViewer, unsigned long *width, unsigned long *height)
  370. ;
  371.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  372.         IMPORT_CFM_FUNCTION Q3ViewerGetDimension
  373.     ENDIF
  374.  
  375. ;
  376. ; extern OSErr Q3ViewerGetMinimumDimension(TQ3ViewerObject theViewer, unsigned long *width, unsigned long *height)
  377. ;
  378.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  379.         IMPORT_CFM_FUNCTION Q3ViewerGetMinimumDimension
  380.     ENDIF
  381.  
  382.  
  383. ; ******************************************************************************
  384. ; **                                                                             **
  385. ; **                            Port related calls                                 **
  386. ; **                                                                             **
  387. ; ****************************************************************************
  388.  
  389. ;
  390. ; extern OSErr Q3ViewerSetPort(TQ3ViewerObject theViewer, CGrafPtr port)
  391. ;
  392.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  393.         IMPORT_CFM_FUNCTION Q3ViewerSetPort
  394.     ENDIF
  395.  
  396. ;
  397. ; extern CGrafPtr Q3ViewerGetPort(TQ3ViewerObject theViewer)
  398. ;
  399.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  400.         IMPORT_CFM_FUNCTION Q3ViewerGetPort
  401.     ENDIF
  402.  
  403.  
  404. ; ******************************************************************************
  405. ; **                                                                             **
  406. ; **        Adjust Cursor should be called from idle loop to allow the Viewer     **
  407. ; **        to change the cursor according to the cursor position/object under     **
  408. ; **        the cursor.                                                             **
  409. ; **                                                                             **
  410. ; ****************************************************************************
  411.  
  412. ;
  413. ; extern Boolean Q3ViewerAdjustCursor(TQ3ViewerObject theViewer, Point *pt)
  414. ;
  415.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  416.         IMPORT_CFM_FUNCTION Q3ViewerAdjustCursor
  417.     ENDIF
  418.  
  419. ;
  420. ; extern OSErr Q3ViewerCursorChanged(TQ3ViewerObject theViewer)
  421. ;
  422.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  423.         IMPORT_CFM_FUNCTION Q3ViewerCursorChanged
  424.     ENDIF
  425.  
  426.  
  427. ; ******************************************************************************
  428. ; **                                                                             **
  429. ; **        Returns the state of the viewer.  See the constant defined at the     **
  430. ; **        top of this file.                                                     **
  431. ; **                                                                             **
  432. ; ****************************************************************************
  433.  
  434. ;
  435. ; extern unsigned long Q3ViewerGetState(TQ3ViewerObject theViewer)
  436. ;
  437.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  438.         IMPORT_CFM_FUNCTION Q3ViewerGetState
  439.     ENDIF
  440.  
  441.  
  442. ; ******************************************************************************
  443. ; **                                                                             **
  444. ; **                            Clipboard utilities                                 **
  445. ; **                                                                             **
  446. ; ****************************************************************************
  447.  
  448. ;
  449. ; extern OSErr Q3ViewerClear(TQ3ViewerObject theViewer)
  450. ;
  451.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  452.         IMPORT_CFM_FUNCTION Q3ViewerClear
  453.     ENDIF
  454.  
  455. ;
  456. ; extern OSErr Q3ViewerCut(TQ3ViewerObject theViewer)
  457. ;
  458.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  459.         IMPORT_CFM_FUNCTION Q3ViewerCut
  460.     ENDIF
  461.  
  462. ;
  463. ; extern OSErr Q3ViewerCopy(TQ3ViewerObject theViewer)
  464. ;
  465.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  466.         IMPORT_CFM_FUNCTION Q3ViewerCopy
  467.     ENDIF
  468.  
  469. ;
  470. ; extern OSErr Q3ViewerPaste(TQ3ViewerObject theViewer)
  471. ;
  472.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  473.         IMPORT_CFM_FUNCTION Q3ViewerPaste
  474.     ENDIF
  475.  
  476.  
  477. ; ******************************************************************************
  478. ; **                                                                             **
  479. ; **                            New Event Model                                     **
  480. ; **                                                                             **
  481. ; ****************************************************************************
  482.  
  483. ;
  484. ; extern Boolean Q3ViewerMouseDown(TQ3ViewerObject theViewer, long x, long y)
  485. ;
  486.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  487.         IMPORT_CFM_FUNCTION Q3ViewerMouseDown
  488.     ENDIF
  489.  
  490. ;
  491. ; extern Boolean Q3ViewerContinueTracking(TQ3ViewerObject theViewer, long x, long y)
  492. ;
  493.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  494.         IMPORT_CFM_FUNCTION Q3ViewerContinueTracking
  495.     ENDIF
  496.  
  497. ;
  498. ; extern Boolean Q3ViewerMouseUp(TQ3ViewerObject theViewer, long x, long y)
  499. ;
  500.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  501.         IMPORT_CFM_FUNCTION Q3ViewerMouseUp
  502.     ENDIF
  503.  
  504. ;
  505. ; extern Boolean Q3ViewerHandleKeyEvent(TQ3ViewerObject theViewer, EventRecord *evt)
  506. ;
  507.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  508.         IMPORT_CFM_FUNCTION Q3ViewerHandleKeyEvent
  509.     ENDIF
  510.  
  511.  
  512. ; ******************************************************************************
  513. ; **                                                                             **
  514. ; **                                    CallBacks                                 **
  515. ; **                                                                             **
  516. ; ****************************************************************************
  517.  
  518. ;
  519. ; extern OSErr Q3ViewerSetDrawingCallbackMethod(TQ3ViewerObject theViewer, TQ3ViewerDrawingCallbackMethod callbackMethod, const void *data)
  520. ;
  521.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  522.         IMPORT_CFM_FUNCTION Q3ViewerSetDrawingCallbackMethod
  523.     ENDIF
  524.  
  525. ;
  526. ; extern OSErr Q3ViewerSetWindowResizeCallback(TQ3ViewerObject theViewer, TQ3ViewerWindowResizeCallbackMethod windowResizeCallbackMethod, const void *data)
  527. ;
  528.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  529.         IMPORT_CFM_FUNCTION Q3ViewerSetWindowResizeCallback
  530.     ENDIF
  531.  
  532. ;
  533. ; extern OSErr Q3ViewerSetPaneResizeNotifyCallback(TQ3ViewerObject theViewer, TQ3ViewerPaneResizeNotifyCallbackMethod paneResizeNotifyCallbackMethod, const void *data)
  534. ;
  535.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  536.         IMPORT_CFM_FUNCTION Q3ViewerSetPaneResizeNotifyCallback
  537.     ENDIF
  538.  
  539.  
  540. ; ******************************************************************************
  541. ; **                                                                             **
  542. ; **                                    Undo                                     **
  543. ; **                                                                             **
  544. ; ****************************************************************************
  545.  
  546. ;
  547. ; extern OSErr Q3ViewerUndo(TQ3ViewerObject theViewer)
  548. ;
  549.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  550.         IMPORT_CFM_FUNCTION Q3ViewerUndo
  551.     ENDIF
  552.  
  553. ;
  554. ; extern Boolean Q3ViewerGetUndoString(TQ3ViewerObject theViewer, char *str, unsigned long *cnt)
  555. ;
  556.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  557.         IMPORT_CFM_FUNCTION Q3ViewerGetUndoString
  558.     ENDIF
  559.  
  560.  
  561. ; ******************************************************************************
  562. ; **                                                                             **
  563. ; **                                Camera Support                                 **
  564. ; **                                                                             **
  565. ; ****************************************************************************
  566.  
  567. ;
  568. ; extern OSErr Q3ViewerGetCameraCount(TQ3ViewerObject theViewer, unsigned long *cnt)
  569. ;
  570.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  571.         IMPORT_CFM_FUNCTION Q3ViewerGetCameraCount
  572.     ENDIF
  573.  
  574. ;
  575. ; extern OSErr Q3ViewerSetCameraByNumber(TQ3ViewerObject theViewer, unsigned long cameraNo)
  576. ;
  577.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  578.         IMPORT_CFM_FUNCTION Q3ViewerSetCameraByNumber
  579.     ENDIF
  580.  
  581. ;
  582. ; extern OSErr Q3ViewerSetCameraByView(TQ3ViewerObject theViewer, TQ3ViewerCameraView viewType)
  583. ;
  584.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  585.         IMPORT_CFM_FUNCTION Q3ViewerSetCameraByView
  586.     ENDIF
  587.  
  588.  
  589. ; ******************************************************************************
  590. ; **                                                                             **
  591. ; **                            Pop-up Button Options                             **
  592. ; **                                                                             **
  593. ; ****************************************************************************
  594.  
  595. ;
  596. ; extern OSErr Q3ViewerSetRendererType(TQ3ViewerObject theViewer, TQ3ObjectType rendererType)
  597. ;
  598.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  599.         IMPORT_CFM_FUNCTION Q3ViewerSetRendererType
  600.     ENDIF
  601.  
  602. ;
  603. ; extern OSErr Q3ViewerGetRendererType(TQ3ViewerObject theViewer, TQ3ObjectType *rendererType)
  604. ;
  605.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  606.         IMPORT_CFM_FUNCTION Q3ViewerGetRendererType
  607.     ENDIF
  608.  
  609. ;
  610. ; extern OSErr Q3ViewerChangeBrightness(TQ3ViewerObject theViewer, float brightness)
  611. ;
  612.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  613.         IMPORT_CFM_FUNCTION Q3ViewerChangeBrightness
  614.     ENDIF
  615.  
  616. ;
  617. ; extern OSErr Q3ViewerSetRemoveBackfaces(TQ3ViewerObject theViewer, TQ3Boolean remove)
  618. ;
  619.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  620.         IMPORT_CFM_FUNCTION Q3ViewerSetRemoveBackfaces
  621.     ENDIF
  622.  
  623. ;
  624. ; extern OSErr Q3ViewerGetRemoveBackfaces(TQ3ViewerObject theViewer, TQ3Boolean *remove)
  625. ;
  626.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  627.         IMPORT_CFM_FUNCTION Q3ViewerGetRemoveBackfaces
  628.     ENDIF
  629.  
  630. ;
  631. ; extern OSErr Q3ViewerSetPhongShading(TQ3ViewerObject theViewer, TQ3Boolean phong)
  632. ;
  633.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  634.         IMPORT_CFM_FUNCTION Q3ViewerSetPhongShading
  635.     ENDIF
  636.  
  637. ;
  638. ; extern OSErr Q3ViewerGetPhongShading(TQ3ViewerObject theViewer, TQ3Boolean *phong)
  639. ;
  640.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  641.         IMPORT_CFM_FUNCTION Q3ViewerGetPhongShading
  642.     ENDIF
  643.  
  644.  
  645.     ENDIF    ; TARGET_OS_MAC
  646.  
  647.  
  648.  
  649.     ENDIF ; __QD3DVIEWER__ 
  650.  
  651.